'''示例'''
d={}
str='软件1804正在6702上课，软件1804上的很认真'
for word in str:
    d[word]=d.get(word,0)+1
print(d)

'''Hamlet英文词频统计'''
def getText():
    txt=open("Hamlet.txt",'r',encoding='utf-8').read()
    txt=txt.lower() #小写
    for i in '!“”#%&()*+-,.\:;<>=?@[\\]^_`{|}~':
       txt=txt.replace(i," ") #用空格替换
    return txt

hamletTxt=getText()
words=hamletTxt.split(' ') #空格分隔单词
counts={}
for word in words: #统计每个词汇出现的次数
    counts[word]=counts.get(word,0)+1
excludes={'the','and','of','you','a','i','my','in'}  #排除词汇
for word in excludes:
    del(counts[word])

items=list(counts.items()) #以键值对存在
items.sort(key=lambda x:x[1],reverse=True)  #list.sort( key=None, reverse=False) 函数用于对原列表进行排序，如果指定参数，则使用比较函数指定的比较函数。
for i in range(10): #输出出现次数最多的10个单词
    word,counts=items[i]
    print('{0:<10}{1:>5}'.format(word,counts))

'''《三国演义》任务出场统计'''

